yansi
A dead simple ANSI terminal color painting library for Rust.
use Paint;
print!;
See the documentation for more.
Why?
Several terminal coloring libraries already exist for Rust (ansi_term
,
colored
, term_painter
, to name a few), begging the question: why yet
another? Here are a few reasons for yansi
:
- This library is much simpler: there are two types! The complete implementation is only about 250 lines of code.
- Like
term_painter
, but unlikeansi_term
, any type implementingDisplay
can be stylized, not only strings. - Styling can be enabled and disabled on the fly.
- Arbitrary items can be masked for selective disabling.
- Typically, only one type needs to be imported:
Paint
. - Zero dependencies. It really is simple.
- The name
yansi
is pretty short.
All that being said, this library borrows the general API of existing libraries
as well as plenty of code from ansi_term
.
License
yansi
is licensed under either of the following, at your option:
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)